package com.insurance.modules.claim.constants;

public interface ClaimConstants {

    /**
     * 通用标识值：0否/无效 1是/有效
     */
    Integer FLAG_NO = 0;
    Integer FLAG_YES = 1;

    //////////////// 案件表 claim_case ////////////////
    /**
     * 事故类型：1医疗 2伤残 3死亡
     */
    Integer ACCIDENT_TYPE_MEDICAL = 1;
    Integer ACCIDENT_TYPE_INJURED = 2;
    Integer ACCIDENT_TYPE_DEAD = 3;

    /**
     * 事故性质：1工作中意外 2上下班途中意外 3工作中交通事故 4上下班途中交通事故 5突发疾病
     */
    Integer ACCIDENT_NATURE_WORK = 1;
    Integer ACCIDENT_NATURE_ROAD = 2;
    Integer ACCIDENT_NATURE_TRAFFIC = 3;
    Integer ACCIDENT_NATURE_ROAD_TRAFFIC = 4;
    Integer ACCIDENT_NATURE_DISEASE = 5;

    /**
     * 事故责任：1主要责任 2次要责任 3同等责任 4全责 5无责
     */
    Integer ACCIDENT_LIABILITY_MAIN = 1;
    Integer ACCIDENT_LIABILITY_SECONDARY = 2;
    Integer ACCIDENT_LIABILITY_EQUAL = 3;
    Integer ACCIDENT_LIABILITY_ALL = 4;
    Integer ACCIDENT_LIABILITY_NONE = 5;

    /**
     * 案件状态：1受理中 2已提交保司 3已结案 4已撤销 5诉讼中
     */
    Integer CASE_STATUS_ACCEPT = 1;
    Integer CASE_STATUS_COMMIT = 2;
    Integer CASE_STATUS_FINISH = 3;
    Integer CASE_STATUS_CANCELLED = 4;
    Integer CASE_STATUS_LITIGATION = 5;

    //////////////// 案件理赔表 claim_settlement ////////////////
    /**
     * 理赔次数：1首次理赔 2二次理赔
     */
    Integer SETTLEMENT_ORDER_FIRST = 1;
    Integer SETTLEMENT_ORDER_SECOND = 2;

    /**
     * 理赔状态：1受理中 2已提交保司 3已结案 4已撤销 5诉讼中
     */
    Integer CLAIM_STATUS_ACCEPT = 1;
    Integer CLAIM_STATUS_COMMIT = 2;
    Integer CLAIM_STATUS_FINISH = 3;
    Integer CLAIM_STATUS_CANCELLED = 4;
    Integer CLAIM_STATUS_LITIGATION = 5;

    //////////////// 出险人信息表 insured_info ////////////////
    /**
     * 证件类型：1身份证 2出生证
     */
    Integer CERTIFICATE_TYPE_ID = 1;
    Integer CERTIFICATE_TYPE_BORN = 2;

    /**
     * 性别：0女 1男
     */
    Integer GENDER_FEMALE = 0;
    Integer GENDER_MALE = 1;

    //////////////// 保单(快照)表 policy_info ////////////////
    /**
     * TODO 人员类别：1 2 3
     */
    Integer personnel_sort_ = 1;

    /**
     * 保费缴纳情况：0未缴纳 1部分缴费 2全部缴清
     */
    Integer PAY_STATUS_NO = 0;
    Integer PAY_STATUS_PART = 1;
    Integer PAY_STATUS_ALL = 2;

    //////////////// 理赔文件表 settlement_file ////////////////
    /**
     * 文件类型：11发票 12诊断证明 13病例 14误工证明 15其他 21协议材料 22结案报告 23决算书
     */
    Integer FILE_TYPE_INVOICE = 11;
    Integer FILE_TYPE_DIAGNOSIS = 12;
    Integer FILE_TYPE_CASE = 13;
    Integer FILE_TYPE_DELAY_WORK = 14;
    Integer FILE_TYPE_OTHER = 15;
    Integer FILE_TYPE_AGREEMENT = 21;
    Integer FILE_TYPE_REPORT = 22;
    Integer FILE_TYPE_ACCOUNT = 23;

    // 诊疗相关理赔单据的文件类型
    Integer[] TREATMENT_FILE_TYPE = {11, 12, 13, 14, 15};
    // 结案金额相关资料的文件类型
    Integer[] SETTLEMENT_FILE_TYPE = {21, 22, 23};

    //////////////// 诊疗信息表 treatment_info ////////////////
    /**
     * 就诊类型：1门诊 2住院
     */
    Integer TREATMENT_TYPE_OUTPATIENT = 1;
    Integer TREATMENT_TYPE_HOSPITAL = 2;


}
